AWS ConfigでEC2のパブリックIPチェックを自動化し、非準拠時にメール通知する方法

AWS ConfigでEC2のパブリックIPチェックを自動化し、非準拠時にメール通知する方法

Clock Icon2024.08.09

はじめに

こんにちは、かつまたです。
今回はAWS Configを用いてec2-instance-no-public-ipルールを設定することで、EC2インスタンスにパブリックIP(Elastic IPを含む)がアタッチされていないことを検出し、非準拠(アタッチされている場合)の際にSNSでメール通知をおこなう構成を作成しました。

おおまかな手順概としては
1.AWS Configルールの設定
2.SNSトピックの作成とサブスクリプションの設定
3.EventBridgeルールの作成
4.非準拠EC2の起動と通知確認
となります。

構成図は以下の通りです。
スクリーンショット 2024-08-07 14.55.17

1.AWS Configルールの設定

1.1 AWSマネジメントコンソールからAWS Configサービスに移動します。
1.2 「ルール」→「ルールの追加」からAWS管理ルールを選択し、ec2-instance-no-public-ip を選択します。
no-eipルール
1.3 ルールの詳細と評価モードを設定し、ルールを作成します

Configルール作成

Configルール評価方法

1.4 Configのナビゲーションメニューを開き、「設定」から「編集」→「記録方法」で「AWS EC2 Instance」を選択し「保存」を押下します。この操作によりConfigがEC2インスタンスの設定変更を追跡するように設定できます。

Config設定EC2

2.SNSトピックの作成とサブスクリプションの設定

2.1 Amazon SNSから「トピックの作成」をクリックします。
2.2 タイプとして「スタンダード」を選択します。

2.3 トピック名を入力し、トピックを作成します。

SNSトピック作成

2.4 作成したトピックを選択し、サブスクリプションの作成をクリックし、プロトコルとして「Email」を選択し、通知を受け取りたいメールアドレスを入力します。サブスクリプションの作成をクリックします。
SNSサブスクリプションEmai;
2.5 メールアドレスに送信された確認リンクをクリックして、サブスクリプションを確認します。
スクリーンショット 2024-08-05 14.37.30

3.EventBridgeルールの作成

3.1 Amazon EventBridgeサービスに移動し、「ルールの作成」をクリックします。
3.2 ルール名を入力します。
3.3 イベントバスとして「default」、「イベントパターン」の「イベントソース」として「AWS Config」を選択します。
EventBridge1
3.4 イベントパターンを設定します。以下のパターンを使用します:

json
{
  "source": ["aws.config"],
  "detail-type": ["Config Rules Compliance Change"],
  "detail": {
    "messageType": ["ComplianceChangeNotification"],
    "newEvaluationResult": {
      "complianceType": ["NON_COMPLIANT"]
    }
  }
}

EventBridgeイベントパターン
3.5 ターゲットとして「SNSトピック」を選択し、先ほど作成したSNSトピックを選択します。ルールの作成をクリックします。
EventBridgeターゲットをSNSに

4.非準拠EC2の起動と通知確認

4.1 Amazon EC2サービスに移動し、インスタンスの起動をクリックします。
4.2 AMIやインスタンスタイプ、VPCやセキュリティグループなど各種設定を選択します。
4.3 インスタンスの詳細の設定で、ネットワーク設定を確認し、パブリックIPアドレスの自動割り当てを「有効」に設定します。
EC2
EC2の2

4.4 起動をクリックして、インスタンスを起動します。
4.5 AWS Config→「ルール」→ルール名のページの「対象範囲内のリソース」で非準拠のインスタンスが検出されていることを確認します。「アクション」→「再評価」から更新をおこなう事もできます。
非準拠確認画面Configルール
4.6 SNSサブスクリプションで登録したメールアドレスに通知が届いていることを確認します。

おわりに

今回、パブリックIPアドレスを持つインスタンスを検出し、メール通知を行う構成を構築しました。AWS Configルールやターゲットリソースを変えることで様々なサービスの構成管理が可能になるため非常に便利なサービスです。ぜひご活用ください。

ご覧いただき、ありがとうございました。

アノテーション株式会社について

アノテーション株式会社はクラスメソッドグループのオペレーション専門特化企業です。サポート・運用・開発保守・情シス・バックオフィスの専門チームが、最新 IT テクノロジー、高い技術力、蓄積されたノウハウをフル活用し、お客様の課題解決を行っています。当社は様々な職種でメンバーを募集しています。「オペレーション・エクセレンス」と「らしく働く、らしく生きる」を共に実現するカルチャー・しくみ・働き方にご興味がある方は、アノテーション株式会社 採用サイトをぜひご覧ください。

この記事をシェアする

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.